It is often desirable to determine the pattern of usage of a computer system. For example, it may be desirable to determine whether a computer system has been used at all. If a computer system purchaser returns the system to the manufacturer for some reason, the manufacturer may be unable to resell it as a new system.
An IBM compatible personal computer system using the MS-DOS or PC-DOS operating system is used here as an illustrative example (the invention, however, is applicable to other operating systems, e.g., the well-known UNIX operating system). As is well-known to those of ordinary skill, such computers cannot perform many useful tasks unless they are running an operating system, i.e., the software that allows the computer to use other software. However, before such a computer can run the operating system, it must load the operating system from a storage device such as computer disk or flash memory to main memory.
When such a computer is turned on, a basic input/output system (BIOS) boot program, commonly stored in a read-only memory (ROM), attempts to locate a "bootable" computer disk. (The term "boot" is industry shorthand for the process by which a computer starts itself up by "pulling itself up by its bootstraps" as discussed in more detail below.) If such a disk is found, the BIOS boot program loads into memory the information found in the boot sector of the disk and branches to a start-up program routine, referred to as a loader program, found in a specific place within that boot-sector information. The loader program checks whether certain "system files" are present on the disk.
If these system files are present, then they are loaded into main memory (if not, then the loader program issues an error message). The data contained in these system files enables the computer to load additional operating-system files from the disk drive. After the computer loads these files, the computer is able to run application programs and perform many useful tasks.
Most BIOS boot programs boot from floppy disks and hard disks; some BIOS boot programs may also boot from flash memory as well. While flash memory is not configured in sectors and cylinders, it does contain a boot-up portion which is similar in function to a disk's boot-sector.